Programming with Sequence Variables: the Sequentica Package

نویسندگان

  • Mircea Marin
  • Dorin Tepeneu
چکیده

Sequence variables are an advanced feature of modern programming languages. They enhance the support for writing programs in a declarative and easily understood way. To our knowledge, Mathematica provides the best support for programming with sequence variables, but it requires a good understanding of how the interpreter chooses the matcher. This is so because matching against patterns with sequence variables is in general not unitary. We claim that there is room to improve the programming style with sequence variables. We propose a number of new programming constructs which impose certain strategies on the pattern matching process. Our constructs enable to control the selection of a matcher by annotating sequence variables with binding priorities and ranges for their lengths, and to compute optimal values characterized by a score function to be optimized. To this end we have developed the package Sequentica. With Sequentica the Mathematica programmers and users get additional support for defining functions and transformation rules in an easy and convenient way. We outline the algorithmic difficulties to support these extensions and describe how they are implemented in Sequentica. The usefulness of these extensions is illustrated with various examples. We regard these extensions as a first step towards identifying a new programming style: programming with sequence variables. Such a programming style is useful to solve problems based on sequence analysis such as bio-informatics, cryptography or data mining.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Functional Programming with Sequence Variables: The Sequentica Package

Sequence variables are an advanced feature of modern languages which allows to program in a declarative and easy to understand way. Functional programming with sequence variables relies on the choice of a matcher, which in general is not unique. We propose a number of idioms for programming with sequence variables which enable the user to control the choice of the matcher. To this end we have d...

متن کامل

A fuzzy mixed-integer goal programming model for a parallel machine scheduling problem with sequence-dependent setup times and release dates

This paper presents a new mixed-integer goal programming (MIGP) model for a parallel machine scheduling problem with sequence-dependent setup times and release dates. Two objectives are considered in the model to minimize the total weighted flow time and the total weighted tardiness simultaneously. Due to the com-plexity of the above model and uncertainty involved in real-world scheduling probl...

متن کامل

A fuzzy multi-objective linear programming approach for solving a new multi-objective job shop scheduling with sequence-dependent setup times

This paper presents a new mathematical model for a bi-objective job shop scheduling problem with sequence-dependent setup times that minimizes the weighted mean completion time and the weighted mean tardiness time. For solving this multi-objective model, we develop a fuzzy multi-objective linear programming (FMOLP) model. In this problem, a proposed FMOLP method is applied with respect to the o...

متن کامل

A Chance Constrained Integer Programming Model for Open Pit Long-Term Production Planning

The mine production planning defines a sequence of block extraction to obtain the highest NPV under a number of constraints. Mathematical programming has become a widespread approach to optimize production planning, for open pit mines since the 1960s. However, the previous and existing models are found to be limited in their ability to explicitly incorporate the ore grade uncertainty into the p...

متن کامل

An Application of the ABS LX Algorithm to Multiple Sequence Alignment

We present an application of ABS algorithms for multiple sequence alignment (MSA). The Markov decision process (MDP) based model leads to a linear programming problem (LPP), whose solution is linked to a suggested alignment. The important features of our work include the facility of alignment of multiple sequences simultaneously and no limit for the length of the sequences. Our goal here is to ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2006